<?php
/**
 * Application level Controller
 *
 * This file is application-wide controller file. You can put all
 * application-wide controller-related methods here.
 *
 * CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
 * Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
 *
 * Licensed under The MIT License
 * For full copyright and license information, please see the LICENSE.txt
 * Redistributions of files must retain the above copyright notice.
 *
 * @copyright     Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
 * @link          http://cakephp.org CakePHP(tm) Project
 * @package       app.Controller
 * @since         CakePHP(tm) v 0.2.9
 * @license       http://www.opensource.org/licenses/mit-license.php MIT License
 */

App::uses('Controller', 'Controller');

/**
 * Application Controller
 *
 * Add your application-wide methods in the class below, your controllers
 * will inherit them.
 *
 * @package		app.Controller
 * @link		http://book.cakephp.org/2.0/en/controllers.html#the-app-controller
 */
class AppController extends Controller {
    
    protected function slug($str) {
        // replace spaces with underscore, all to lowercase
        $str = strtolower(str_replace(" ", "_", $str));
        
        // create regex pattern
        $pattern = "/[^a-zA-Z0-9_]/";
        
        // replace non alphanumeric characters
        $str = preg_replace($pattern, "", $str);
        
        return $str;
    }
    
    protected function check_user() {
        $user = $this->Session->read("User");
        
        if (empty($user)) {
            $this->Session->setFlash("ERROR: You must be logged to access the admin area");
            $this->redirect(array("action" => "login", "controller" => "users", "admin" => false));
        }
    }
}